Skip to content

Add Governance Vote Calendar page#145

Open
mo-anon wants to merge 5 commits into
mainfrom
feat/vote-calendar
Open

Add Governance Vote Calendar page#145
mo-anon wants to merge 5 commits into
mainfrom
feat/vote-calendar

Conversation

@mo-anon

@mo-anon mo-anon commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds a Governance Vote Calendar at /vote-calendar — a monthly calendar of Curve DAO governance proposals. Each proposal's 7-day voting window renders as a bar spanning its days, packed into lanes per week, with a click-through detail modal (vote tally, quorum/support progress bars, Etherscan/IPFS/forum links). A "Vote Calendar" tab is added to the shared Visualizations topbar.

Layout & behaviour

  • Lanes ordered by earliest pass date — the soonest-resolving vote sits on top, including bars that spill in from previous weeks (sorted on the real start_date, not the week-clipped column).
  • No truncation — every overlapping vote renders and the week grows taller to fit, instead of collapsing extras into a "+N more this week" overflow.

Visual

  • Status palette: amber = active, blue = passed, green = executed, red = failed. Calendar bars match the legend dots exactly (shared CSS variables).
  • Clear ink-ring hover that highlights all segments of a vote across rows.
  • Removed the redundant subtitle to save vertical space.

Test plan

  • /vote-calendar loads and renders the current month
  • Month navigation (prev/next/today) works and is bounded to the available range
  • Busy weeks show all votes (no "+N more")
  • Bar colours match the legend; hover is clearly visible
  • Detail modal opens with correct tally/quorum/support and links

🤖 Generated with Claude Code

mo-anon and others added 3 commits June 1, 2026 11:56
A monthly calendar of Curve DAO governance proposals at /vote-calendar.
Each 7-day voting window renders as a bar spanning its days, laid out into
lanes per week, with a detail modal (tally, quorum/support progress, links).

- Lanes are ordered by earliest pass date so the soonest-resolving vote sits
  on top, including bars spilling in from previous weeks.
- No lane cap: every overlapping vote renders (the week grows to fit) instead
  of collapsing into a "+N more this week" overflow.
- Status palette: amber=active, blue=passed, green=executed, red=failed, with
  bars matching the legend dots and a clear ink-ring hover.
- Adds a "Vote Calendar" tab to the shared Visualizations topbar.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Thicker 3px ink ring, deeper darken, and a larger offset shadow so the
hovered vote stands out clearly against neighbouring bars.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Render weekly gauge weight voting epochs (Thursday 00:00 UTC boundaries)
as a pinned violet row above the proposal lanes. Clicking an epoch opens a
modal with a themed Chart.js bar chart of the top 15 gauges plus a scrollable
table of all gauges >= 0.01% (with a "show all" toggle for the long tail).

- Precompute historical distributions: scripts/sync-gauge-epochs.mjs sweeps
  every gauge's weight_history and writes static/gauge-epochs.json
  (yarn sync-gauge-epochs).
- Ongoing epoch reads live on-chain gauge_relative_weight from the
  GaugeController via viem multicall over free public RPCs (no keys),
  cached in localStorage for 10m, with a static-file fallback on failure.
- Month/year picker on the nav label; remove the per-proposal Gov forum link.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mo-anon mo-anon force-pushed the feat/vote-calendar branch from 2652279 to c181d79 Compare June 1, 2026 12:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant